package br.com.cast.scc.veiculo;

import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.data.DataView;

import br.com.cast.scc.model.Veiculo;

public class VeiculoGridPanel extends WebMarkupContainer {
	private static final long serialVersionUID = 1L;

	public VeiculoGridPanel(String id, FiltroPesquisaVeiculos filtro) {
		super(id);
		
		setOutputMarkupId(true);
		
		criaGrade(filtro);
	}

	private void criaGrade(FiltroPesquisaVeiculos filtro){
		DataView<Veiculo> grade = new DataView<Veiculo>("veiculos", filtro) {
			private static final long serialVersionUID = 1L;

			@Override
			protected void populateItem(Item<Veiculo> item) {
				item.add(new Label("tpVeiculo.descricao"));
				item.add(new Label("nuEmbarcacao"));
				item.add(new Label("status"));
				
				criaBotaoEditar(item);
				
			}
		};
		
		add(grade);
	}

	protected void criaBotaoEditar(final Item<Veiculo> item) {
		item.add(new Link<Void>("editar"){
			private static final long serialVersionUID = 1L;

			@Override
			public void onClick() {
				Veiculo veiculo = item.getModelObject();
				
				CadastrarVeiculoPage page = new CadastrarVeiculoPage();
				
				page.atualizaModelo(veiculo);
				setResponsePage(page);
				
			}
			
		});
		
	}
}
